export default {
    namespaced: true, // 命名空间
    state: {
        currentMenu: null,
        tabsList: [{
            path: 'homepage',
            name: 'HomePage',
            meta: {
                label: '首页',
                icon: 's-home'
            }
        }]
    },
    mutations: {

        // 侧边栏点击 -- 设置头部面包屑&添加tag标签
        selectMenu(state, value) {
            // console.log("selectMenu", state.tabsList)
            if (value.name !== 'HomePage') {
                state.currentMenu = value

                // 通过 数组方法 findIndex 进行筛选当前选中元素是否已经存在
                let result = state.tabsList.findIndex(item => item.name === value.name)

                // 如果当前选中元素已经存在，则不做操作；
                // 如果当前选中元素不存在（findIndex 返回的值是 -1）就讲该元素的信息 push 到 state 中
                result === -1 ? state.tabsList.push(value) : ''
            } else {
                state.currentMenu = null
            }
            // value.name === 'HomePage' ? (state.currentMenu = null) : (state.currentMenu = value)
        },

        // 删除tabsList中的指定元素
        closeTab(state, val) {
            // 通过 数组方法 findIndex 查找到当前点击的元素，并通过 splice 的方法进行删除
            let result = state.tabsList.findIndex(item => item.name === val.name)
            state.tabsList.splice(result, 1)
        },
    }
}  